define(['jquery', 'bootstrap', 'backend', 'table', 'form'],function($, undefined, Backend, Table, Form){
    var Controller = {
        index:function(){
            // 初始化表格参数配置
            Table.api.init({
                extend: {
                    index_url: 'subject/chapter/index',
                    add_url: 'subject/chapter/add',
                    edit_url: 'subject/chapter/edit',
                    del_url: 'subject/chapter/del',
                    multi_url: 'subject/chapter/multi',
                    table: 'subject_list',
                },
                // 处理接收参数
                queryParams:function(params)
                {
                    // 判断当前是否还有其他高级搜索栏的条件
                    var filter = params.filter ? JSON.parse(params.filter) : {}
                    
                    // 并将搜索过滤器 转为对象方便我们追加条件
                    var op = params.op ? JSON.parse(params.op) : {};

                    // 接收到的参数
                    var ids = Fast.api.query('ids')
                    
                    // 赋值
                    filter.subid = ids

                    // 查询subid = filter.subid
                    op.subid = '='

                    params.filter = JSON.stringify(filter)
                    params.op = JSON.stringify(op)

                    return params
                }
            });

            // 获取到table标签的id
            var table = $("#table")

            // 初始化表格
            table.bootstrapTable({
                // 当访问列表发起ajax请求数据
                url:$.fn.bootstrapTable.defaults.extend.index_url,
                // 主键
                pk:'id',
                // 设置默认排序
                sortName:'createtime',
                sortOrder:'desc',
                columns:[
                    [
                        {checkbox: true},
                        {field:'id',title:__('Id'),sortable: true},
                        {field:'title',title:__('Title')},
                        {field:'url',title:__('Url')},
                        {field:'createtime',title:__('Ceatetime'),addclass:'datetimerange', formatter: Table.api.formatter.datetime},
                        {
                            field: 'operate',
                            title: __('Operate'),
                            table: table,
                            events: Table.api.events.operate,
                            formatter: Table.api.formatter.operate
                        }
                    ]
                ]
            })

            // 为表格绑定事件
            Table.api.bindevent(table);
        },
        // 添加
        add:function()
        {
            Controller.api.bindevent();
        },
        edit:function()
        {
            Controller.api.bindevent();
        },
        api: {
            bindevent: function () {
                Form.api.bindevent($("form[role=form]"));
            }
        }
    }


    return Controller
})